.. _cemCfgSpeedPattern_Get: cemCfgSpeedPattern_Get ================================ -------------------------------- SYNOPSYS ````````````` .. code-block:: none VT_I4 cemCfgSpeedPattern_Get( [in] VT_I4 Axis, [out] VT_PI4 SpeedMode, [out] VT_PR8 WorkSpeed, [out] VT_PR8 Accel, [out] VT_PR8 Decel ) DESCRIPTION ````````````` - cemCfgSpeedPattern_Get 함수는 지정한 축에 대해 설정되어 있는 속도 설정 환경을 반환합니다. PARAMETER ````````````` ▶ Axis : 축 번호. 통합 축으로 관리되는 축 번호를 의미하며, 상수 값으로 0 (Zero Based) 이상, (최대 통합 축 개수 - 1) 이하의 값을 축 번호로 설정할 수 있습니다. ▶ SpeedMode : cemCfgSpeedPattern_Get() 함수의 인자이며, 설정되었는 속도 모드를 반환합니다. .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 0 (cemMODE_C), CONSTANT 속도모드 => 가감속을 수행하지 않습니다. 1 (cemMODE_T), TRAPEZOIDAL 속도모드 => 사다리꼴 가감속을 수행합니다. 2 (cemMODE_S), S-CURVE 속도모드 => S-CURVE 가감속을 수행합니다. -1 (ccemSMODE_KEEP), 이전 속도 모드를 유지합니다. ▶ SpeedMode : cemCfgSpeedPattern_Get() 함수의 인자이며, 속도모드의 반환 값 입니다. .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 0 (cemMODE_C), CONSTANT 속도모드 => 가감속을 수행하지 않습니다. 1 (cemMODE_T), TRAPEZOIDAL 속도모드 => 사다리꼴 가감속을 수행합니다. 2 (cemMODE_S), S-CURVE 속도모드 => S-CURVE 가감속을 수행합니다. ▶ WorkSpeed : 작업 속도를 설정 혹은 반환합니다. ▶ Accel : 가속도를 설정 혹은 반환합니다. ▶ Decel : 감속도를 설정 혹은 반환합니다. REFERENCE ``````````````` - 단축 모션 제어의 경우 cemSxSpeedRatio_Get 함수를 통해 설정된 모션 이송 기준 속도의 비율로 모션 제어의 속도를 결정할 수 있습니다. \ - 원점 복귀 제어는 cemHomeSpeedPattern_Get 함수를, 보간 제어는 cemIxSpeedPattern_Get 함수 를 통해 작업 속도를 설정합니다. \ - 한번 설정한 속도설정은 변경하기 전까지 계속해서 적용됩니다. 따라서 속도를 변경할 필요가 없는 경우에는 이송명령을 수행할 때마다 속도설정을 해줄 필요는 없습니다. \ - 속도와 가/감속도의 단위는 cemCfgUnitSpeed_Get() 함수에 의해 결정됩니다. .. image:: ../../res/14-6.jpg .. image:: ../../res/14-7.jpg .. image:: ../../res/14-8.jpg RETURN VALUE ````````````` .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 음수, 수행 실패 0(ERR_NONE), 수행 성공 EXAMPLE ``````````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 #include “ceSDK.h” #include “ceSDKDef.h” void OnGetSpeedPattern () { long nAxisNo = 0; // 모션 이송 기준 속도를 설정할 축을 선택합니다. long nSpeedMode; // 속도 패턴 정보. double fVel, fAcc, fDec; /* 0번축의 속도 패턴을 S-Curve로 설정하고, 작업속도를 2000, 가속도를 10000, 감속도를 10000으로 설정합니다.*/ cemCfgSpeedPattern_Get ( nAxisNo, // 대상 축 선택. cemSMODE_S, // 속도 모드 선택. 2000, // 작업 속도 10000, // 가속도 10000 // 감속도 ); // 설정되어있는 속도 패턴 및 작업속도, 가속도, 감속도를 반환합니다. cemCfgSpeedPattern_Get ( nAxisNo, &nSpeedMode, &fVel, &fAcc, &fDec ); } .. code-block:: c++ :linenos: Visual Basic Private Sub OnGetSpeedPattern () Dim nAxisNo As Long ‘ 모션 이송 기준 속도를 설정할 축을 선택합니다. Dim nSpeedMode As Long ‘ 속도 패턴 정보. Dim fVel As Double, fAcc As Double, fDec As Double nAxisNo = 0 ‘ 0번축의 속도 패턴을 S-Curve로 설정하고, ‘ 작업속도를 2000, 가속도를 10000, 감속도를 10000으로 설정합니다. Call cemCfgSpeedPattern_Get ( nAxisNo, cemSMODE_S, 2000, 10000, 10000 ) ‘ 설정되어있는 속도 패턴 및 작업속도, 가속도, 감속도를 반환합니다. Call cemCfgSpeedPattern_Get ( nAxisNo, nSpeedMode, fVel, fAcc, fDec ) End Sub .. code-block:: c++ :linenos: Delphi procedure OnGetSpeedPattern (); var nSpeedMode : LongInt; fVe, fAcc, fDec : Double; // 속도 패턴 정보. begin { 0 번축의 속도 패턴을 S-Curve로 설정하고, 작업속도를 2000, 가속도를 10000, 감속도를 10000으로 설정합니다. } cemCfgSpeedPattern_Get ( ceX1, cemSMODE_S, 2000, 10000, 10000 ); ‘ 설정되어있는 속도 패턴 및 작업속도, 가속도, 감속도를 반환합니다. cemCfgSpeedPattern_Get ( ceX1, @nSpeedMode, @fVel, @fAcc, @fDec ); end; SEE ALSO ````````````` .. seealso:: :ref:`cemPmSxGetSpeedRatio`, :ref:`cemPmSxGetSpeedRatio`